package Demo0518;

import demo518.Emp;

import java.util.Iterator;
import java.util.Set;

public class TestSet {
        public void addEmp(Set<Emp> set, Emp emp) {
            set.add(emp);
        }

        public void findAllEmp(Set<Emp> set) {
            for (Emp emp : set) {
                System.out.println(emp);
            }
        }

        public Emp findEmpName(Set<Emp> set, String empName) {
            for (Emp emp : set) {
                if (empName.equals(emp.getName())) {
                    return emp;
                }
            }
            return null;
        }

        public void deleteEmp(Set<Emp> set, String empNumber) {
            Iterator<Emp> iterator = set.iterator();
            while (iterator.hasNext()) {
                Emp emp = iterator.next();
                if (empNumber.equals(emp.getNumber())) {
                    iterator.remove();
                    break; // 使用 break 避免并发修改异常
                }
            }
        }

        public Emp findEmpNumber(Set<Emp> set, String empNumber) {
            for (Emp emp : set) {
                if (empNumber.equals(emp.getNumber())) {
                    return emp;
                }
            }
            return null;
        }

        public void updateEmp(Set<Emp> set, Emp emp) {
            // 删除旧的 emp 对象
            Iterator<Emp> iterator = set.iterator();
            while (iterator.hasNext()) {
                Emp e = iterator.next();
                if (e.getNumber().equals(emp.getNumber())) {
                    iterator.remove();
                    break;
                }
            }
            // 添加更新后的 emp 对象
            set.add(emp);
        }
    }



